-
Notifications
You must be signed in to change notification settings - Fork 366
Parallel snapshot decompress experiment #7406
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
c23da83 to
30da3ff
Compare
30da3ff to
287dc29
Compare
Performance Measurements ⏳
|
287dc29 to
8f25332
Compare
Performance Measurements ⏳
|
Ensures that our streaming Zstandard frame boundary detector computes the same result as libzstd.
8f25332 to
e9fc516
Compare
Performance Measurements ⏳
|
| return; | ||
| FD_LOG_WARNING(( "corrupt snapshot: unexpected end of TAR file" )); | ||
| transition_malformed( ctx, stem ); | ||
| return 0; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
indent
| atexit( fd_halt ); | ||
| //fd_log_level_stderr_set(4); | ||
| //fd_log_level_logfile_set(4); | ||
| //fd_log_level_core_set(4); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
recomment
|
|
||
| if( FD_LIKELY( out_produced ) ) { | ||
| fd_stem_publish( stem, 0UL, FD_SNAPSHOT_MSG_DATA, ctx->out.chunk, out_produced, 0UL, 0UL, 0UL ); | ||
| ulong ctl = fd_frag_meta_ctl( 0UL, 0, frame_res==0UL, 0 ); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
separate out into eom var
| if( snapwr_tile ) fputs( "--------------", stdout ); | ||
| if( snapls_tile ) fputs( "[ct],[ld],[dc],[in],[lts]--------[ct],[ld],[dc],[in],[lts]", stdout ); | ||
| else fputs( "[ct],[ld],[dc],[in]--------[ct],[ld],[dc],[in]", stdout ); | ||
| if( snapls_tile ) fputs( "[ld],[dc],[in],[lts]--------[ld],[dc],[in],[lts]", stdout ); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
lthash and multi dc tiles are incompatible
Updates Firedancer's snapshot load topology to run multiple Zstandard decompressor tiles in parallel, taking turns compressing frames produced by the writer in #7401.
This entirely eliminates the Zstandard bottleneck, decompressing a mainnet snapshot in 22 seconds with 16 threads on Zen 4.